package com.xique.park.bean.domain;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.xique.park.bean.vo.web.car.ParkCarAddGarageSpaceVo;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.io.Serializable;
import java.util.Date;
import java.util.List;

/**
 * 车辆变更记录表
 *
 * @TableName t_park_update_car_log
 */
@TableName(value = "t_park_update_car_log")
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class ParkUpdateCarLog implements Serializable {
    /**
     *
     */
    @TableId(type = IdType.AUTO)
    private Long id;

    /**
     *
     */
    private String address;

    /**
     * 续费信息-起始日期
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date beginDate;

    /**
     * 续期信息-截止日期
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date endDate;

    /**
     * 是否分车库统计车位 Y 是 N 不是
     */
    private String isGarageSpace;

    /**
     * 车牌号，多个用逗号隔开
     */
    private String plates;

    /**
     * 车辆记录id
     */
    private Long carId;

    /**
     * 分车库统计车位
     */
    private String spaceList;

    /**
     * 状态 normal 启用  pause 停用
     */
    private String status;

    /**
     * 手机号
     */
    private String telephone;

    /**
     * 车主id
     */
    private Long userId;

    /**
     * 车主姓名
     */
    private String userName;

    /**
     * 备注
     */
    private String remark;

    /**
     * 操作人id
     */
    private Long operId;

    /**
     * 操作者姓名
     */
    private String operName;

    /**
     * 更新时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date updateTime;

    /**
     * 座机
     */
    private String phone;

    /**
     * 0 用户信息更改  1车辆信息   2 续期信息
     */
    private String updateType;


    /**
     * 车辆管理大类
     */
    private String mngType;


    /**
     * 成功标识
     */
    private Integer flag;

    /**
     * 车场id
     */
    private Long parkId;


    @TableField(exist = false)
    private static final long serialVersionUID = 1L;


    /**
     * 变更前的车位车库数量统计
     */
    private String beforeSpaceList;

    /**
     * 变更前后车位数
     */
    private String spaceCnt;

    /**
     * 应收金额
     */
    private Integer mayFee;

    /**
     * 实收金额
     */
    private Integer actualFee;

    /**
     * 支付类型
     */
    private String payType;

    @TableField(exist = false)
    private List<ParkCarAddGarageSpaceVo> spaceLists;

    /**
     * 更改前的车位数
     */
    private String beforeSpaceCnt;

    /**
     * 更改前管理类型
     */
    private String beforeMngType;


}